package domein;

import java.util.ArrayList;
import java.util.List;

import domein.exceptie.InvalidCategorieException;

public class SpelersPersonage extends Personage {

	private double geld;
	private List<Uitbreiding> deUitbreidingen;

	public SpelersPersonage(String naam, PersonageCategorie categorie,
			int schadepunten, double geld) throws IllegalArgumentException,
			InvalidCategorieException {
		super(naam, categorie, schadepunten);
		setGeld(geld); // Nieuw personage begint met 0 geld?
		deUitbreidingen = new ArrayList<Uitbreiding>();
	}

	public SpelersPersonage(String naam, PersonageCategorie categorie)
			throws IllegalArgumentException, InvalidCategorieException {
		this(naam, categorie, 0, 0); // Nieuw personage heeft automatisch 0
										// schadepunten
	}

	/**
	 * Geeft het aantal geld terug
	 * 
	 * @author Kenneth
	 * @return geld
	 */
	public double getGeld() {
		return geld;
	}

	/**
	 * Hiermee kan je het geld instellen
	 * 
	 * @author Kenneth
	 * @param geld
	 */
	public void setGeld(double geld) {
		this.geld = geld;
	}

	public void voegUitbreidingToe(Uitbreiding uitbreiding) {
		if (uitbreiding != null)
			deUitbreidingen.add(uitbreiding);
	}

	public List<Uitbreiding> geefUitbreidingen() {
		return deUitbreidingen;
	}

	@Override
	public String geefTextWeergave() {
		return "@";
	}
}
